1. Field of the Invention
The present invention relates to computer-based accounting systems. More specifically, the present invention facilitates reversibly moving or merging account balances from at least one source account into a target account in a general ledger accounting system.
2. Related Art
Move/merge operations are often used in general ledger accounting systems to facilitate corporate restatements, reclassifications or chart of account modifications. As the name implies, a move/merge operation moves balances from one account to another or xe2x80x9cmergesxe2x80x9d multiple balances into one.
Move/merge operations can be used for a variety of reasons. (1) A move/merge operation can be used to reflect the results of a corporate reorganization where the responsibility for a cost center is moved and the cost center number is changed to fit into the numbering scheme of the new owner. (2) In another example, when two organizations are being merged, a move/merge operation can be used to compare current balances of the merged organization against the combined balances of the separate organizations. (3) A move/merge operation can additionally be used to change a general ledger account number to facilitate a change in reporting requirements; for example, in moving a balance from an asset to a liability or from a revenue to an expense.
Many existing general ledger systems provide move/merge functionality. However, this move/merge functionality is not well-controlled. In current systems, move/merge operations are typically run in batch mode, with little if any error checking. Balances can be moved between balance sheet and income statement accounts, changing historical balances from those previously reported, and even causing an entity""s balance sheet to no longer balance. In current systems, it is even possible to move balances from one legal entity to another, causing the general ledger of each legal entity to be out of balance.
Additionally, once move/merge operations are processed, there is presently no easy way to xe2x80x9cundoxe2x80x9d the results of the move/merge operation. The only way to undo a move/merge operation is to restore general ledger balances back to a prior version of the general ledger balances, and to repost any entries subsequently posted after the move/merge operation. Hence, a user is typically unable xe2x80x9cundoxe2x80x9d the results of a move/merge operation because the undo operation must typically be performed with MIS resources.
Finally, in current systems, when balances in the general ledger are moved, the balances no longer reconcile back to the subledger that created the transactions. For example, assume the general ledger has one accounts payable account, which is only posted by the accounts payable system. In this case, the general ledger can be reconciled back to the accounts payable system. However, if the accounts payable balance is moved to another account, reconciliation is no longer possible.
In some systems, the user has the option of changing the underlying transactions to identify the target account instead of the source account. If the transactions are changed, the general ledger balance is supported by the posted transactions. However, there is no longer a link between the general ledger transactions and the transactions sent to the general ledger by the subledger. Consequently, if the transactions are not changed to reflect the target account, the balances in the general ledger can no longer be reconciled back to the underlying transactions.
Hence, what is needed is a system that supports a move/merge operation can be easily reversed without undesirable side effects.
One embodiment of the present invention provides a system for moving balances from at least one source account into a target account and subsequently reversing the movement. The system operates by receiving a request for a move/merge operation to move the balances from source accounts to the target account. In response to the request, the system creates a list of changes to the source accounts and the target account that are involved in moving the balances. The system stores this list of changes into a memory for later retrieval during a move/merge reversal operation. Next, the system performs the move/merge operation by applying the list of changes to the source accounts and the target account. When the system subsequently receives a request to reverse the move/merge operation, the system reverses the move/merge operation by retrieving the list of changes from the memory and applying the inverse of changes in the list to the source accounts and the target account. In a variation the on above-embodiment, the system validates the move/merge operation according to a set of business rules before performing the move/merge operation. For example, the set of business rules may ensure that the source and target accounts belong to the same financial statement category or the same business entity. In a further variation on the above embodiment, the system additionally creates move/merge audit journal entries to facilitate future auditing of the changes made during the move/merge operation.